function LoginView(){
	var Controller = require('ui/model/Controller');

	// this sets the background color of the master UIView (when there are no windows/tab groups on it)
	Titanium.UI.setBackgroundColor('#fff');

	var tabGroup = Titanium.UI.createTabGroup();
 
	var username = Titanium.UI.createTextField({
    	color:'#336699',
    	top:10,
    	left:10,
    	width:300,
    	height:40,
    	hintText:'Username',
    	keyboardType:Titanium.UI.KEYBOARD_DEFAULT,
    	returnKeyType:Titanium.UI.RETURNKEY_DEFAULT,
    	borderStyle:Titanium.UI.INPUT_BORDERSTYLE_ROUNDED
	}); 
 
	var password = Titanium.UI.createTextField({
	    color:'#336699',
	    top:60,
	    left:10,
	    width:300,
	    height:40,
	    hintText:'Password',
	    passwordMask:true,
	    keyboardType:Titanium.UI.KEYBOARD_DEFAULT,
	    returnKeyType:Titanium.UI.RETURNKEY_DEFAULT,
	    borderStyle:Titanium.UI.INPUT_BORDERSTYLE_ROUNDED
	}); 
 
	var loginBtn = Titanium.UI.createButton({
	    title:'Login',
	    top:110,
	    width:90,
	    height:35,
	    borderRadius:1,
	    font:{fontFamily:'Arial',fontWeight:'bold',fontSize:14}
	});


	var cancelBtn = Titanium.UI.createButton({
	    title:'Cancel',
    	top:155,
    	width:90,
    	height:35,
    	borderRadius:1,
    	font:{fontFamily:'Arial',fontWeight:'bold',fontSize:14}
	});

	
	//Evento correspondiente al boton LOGIN
	loginBtn.addEventListener('click',function(e){
		try{

			var controller;

			//Verifica si existe el Controller		
			if (Ti.App.controller==null){
				
				Ti.App.controller = new Controller();
				
			}
			
			controller = Ti.App.controller;
			
			var params = {
				userName: username.value,   
				passWord: password.value
			};
		
			//Inicio de sesion
			controller.login(params);
		
		}
		catch(e){
			alert(e.message);		
		}
	});
	
	
	//EventListener para manejo de las ventanas tras el inicio de sesion
	Ti.App.addEventListener('loginPlayer', function(data) {
		try{

			
			/* type:  data.user.__type
			 * Id: data.user.Id
			 * Name data.user.Name
			 * Ubicacion: data.user.Ubicacion
			 * Latitud: data.user.Ubicacion.Latidud
			 * Longitud: data.user.Ubicacion.Longitud
			 */
			
			if (data.user != null){
  				
  				
  				//Persiste los datos del inicio de sesion
  				Ti.App.controller.playerSession = data.user;
  				
  				
  				//load component dependencies
				var MapView = require('ui/common/MapView');

				//abre la ventana con el mapa
				new MapView().open();
				
				//Cierra la ventana de login
				tabGroup.close();
				
  			} else {
  				alert('Nombre de usuario y/o contraseña invalidos. Intente nuevamente');
  			}
  			
  		}
		catch(e){
			alert('Error: ' + e.message);
		}
	});	
	
	
	

	var login = Titanium.UI.createWindow({
    	title:'Inicio Sesión',
    	tabBarHidden:true,
	});
	
	
	login.add(username);
	login.add(password);
	login.add(loginBtn);
	login.add(cancelBtn);


	var loginTab = Titanium.UI.createTab({
	    title:"Login",
    	window:login
	});
 
	tabGroup.addTab(loginTab);
		
	return tabGroup;
}

module.exports = LoginView;